home *** CD-ROM | disk | FTP | other *** search
/ Developer CD Series 1994…tember: Reference Library / Dev.CD Sep 94.toast / Periodicals / develop / develop Issue 15 / develop 15 code / 3D Interface / Demo3D / Demo3D.r < prev    next >
Encoding:
Text File  |  1993-06-02  |  10.0 KB  |  387 lines  |  [TEXT/MPS ]

  1. // Demo3D.r
  2.  
  3. // • Auto-Include the requirements for this source
  4. #ifndef __TYPES.R__
  5. #include "Types.r"
  6. #endif
  7.  
  8. #ifndef __MacAppTypes__
  9. #include "MacAppTypes.r"
  10. #endif
  11.  
  12. #ifndef __ViewTypes__
  13. #include "ViewTypes.r"
  14. #endif
  15.  
  16. #ifndef __BalloonTypes__
  17. #include "BalloonTypes.r"
  18. #endif
  19.  
  20. #if qDebug | qPerform
  21. include "Debug.rsrc" not 'ckid';
  22. #endif
  23. include "MacApp.rsrc" not 'ckid';
  24. include "Dialog.rsrc" not 'ckid';
  25.  
  26. #ifndef __FloatWindow__
  27. #include "FloatWindow.r"
  28. #endif
  29.  
  30. include "Demo3D.Views";
  31.  
  32. include $$Shell("ObjApp")"Demo3D" 'CODE';
  33.  
  34. #define kSignature            'DE3D'            // Application Signature
  35.  
  36. // Resource IDs
  37. #define c3DDrawingWind  1001
  38. #define c3DDrawingProcWind  1002
  39.  
  40. #define kStrings 2000
  41.  
  42. #define mWindows            4        //    ID of the "Windows" menu
  43.  
  44. /* Command numbers */
  45.  
  46.  
  47. resource 'res!' (256,
  48. #if qNames
  49.     "Demo3D's resident segments",
  50. #endif
  51.     purgeable) {
  52.     {    "ARes";
  53.         "A3DRes";
  54.         "A3DControlRes";
  55.     };
  56. };
  57.  
  58. resource 'seg!' (256, purgeable) {
  59.     {
  60.         "ARes";
  61.         "GNonRes";
  62.         "GClipboard";
  63.         "GClose";
  64.         "GDoCommand";
  65.         "GOpen";
  66.         "GSelCommand";
  67.         "BBNonRes";
  68.         "BBOpen";
  69.         "GNonRes2";
  70.         "GReadResource";
  71.         "TESelCommand";
  72.         "SANELIB";
  73.     }
  74. };
  75.  
  76. resource 'SIZE' (-1) {
  77.     saveScreen,
  78.     acceptSuspendResumeEvents,
  79.     enableOptionSwitch,
  80.     canBackground,
  81.     doesActivateOnFGSwitch,
  82.     backgroundAndForeground,
  83.     dontGetFrontClicks,
  84.     ignoreAppDiedEvents,
  85.     is32BitCompatible,
  86.     isHighLevelEventAware,
  87.     localAndRemoteHLEvents,
  88.     notStationeryAware,                
  89.     reserved,
  90.     reserved,
  91.     reserved,
  92.     reserved,
  93. #if qModelFarCode
  94.     675 * 1024,
  95.     625 * 1024,
  96. #elif qDebug
  97.     600 * 1024,
  98.     575 * 1024
  99. #else
  100.     450 * 1024,
  101.     400 * 1024
  102. #endif
  103. };
  104.  
  105. resource 'DITL' (phAboutApp, purgeable) {
  106.      {
  107. /* [1] */    {160, 182, 180, 262}, Button { enabled, "OK" };
  108. /* [2] */    {8, 70, 152, 316}, StaticText { disabled, 
  109.     "3D Drawing with MacApp Demo." 
  110.     "\n\nBy Jamie Osborne "
  111.     " © 1993 Apple Computer, Inc."};
  112. /* [3] */    {10, 20, 42, 52}, Icon { disabled, 1 }
  113.     }
  114. };
  115.  
  116. resource 'MBAR' (kMBarDisplayed,
  117. #if qNames
  118. "kMBarDisplayed",
  119. #endif
  120. nonpurgeable) {
  121.     {mApple; mFile; mEdit; mWindows} 
  122. };
  123.  
  124.  
  125. include "Defaults.rsrc"  'ALRT' (phAboutApp);    // Grab the default about box
  126.  
  127. include "Defaults.rsrc" 'CMNU' (mApple);        // Grab the default Apple menu
  128.  
  129. resource 'CMNU' (mFile,
  130. #if qNames
  131. "mFile",
  132. #endif
  133. nonpurgeable) {
  134.     mFile,
  135.     textMenuProc,
  136.     EnablingManagedByMacApp,
  137.     enabled,
  138.     "File",
  139.     {
  140.     "Close",            noIcon, "W",    noMark, plain, cClose;
  141.     "Quit",                noIcon, "Q",    noMark, plain, cQuit
  142.     }
  143. };
  144.  
  145. include "Defaults.rsrc" 'CMNU' (mEdit);        // Grab the default Edit menus
  146.  
  147. resource 'CMNU' (mWindows,
  148. #if qNames
  149. "mWindows",
  150. #endif
  151. nonpurgeable) {
  152.     mWindows,
  153.     textMenuProc,
  154.     EnablingManagedByMacApp,
  155.     enabled,
  156.     "Windows",
  157.      {
  158. /* [1] */    "Show Template 3D Drawing",            noIcon, noKey, noMark, plain, c3DDrawingWind;
  159. /* [2] */    "Show Procedural 3D Drawing",        noIcon, noKey, noMark, plain, c3DDrawingProcWind;
  160.     }
  161. };
  162.  
  163.  
  164. include "Defaults.rsrc" 'CMNU' (mBuzzwords);    // Get the default buzzwords menu
  165.  
  166.  
  167.  
  168. resource 'ICN#' (128, "Demo3D Family", purgeable) {
  169.     {    /* array: 2 elements */
  170.         /* [1] */
  171.         $"0000 0000 007F 00FE 0081 0102 0080 8203"
  172.         $"0100 8403 0100 4803 0200 5003 0200 2003"
  173.         $"0400 0003 0400 0003 0800 0003 0800 0003"
  174.         $"1000 0003 11FF FFE3 2100 0023 217F FFA3"
  175.         $"4140 00A3 4140 7EA3 815B 42A3 FD54 7EAF"
  176.         $"7D40 00AF 7D40 00AF 0140 00A0 014E 1CA0"
  177.         $"0151 22A0 014E 1CA0 0140 00A0 017F FFA0"
  178.         $"0100 0020 01FF FFE0",
  179.         /* [2] */
  180.         $"0000 0000 00FF 01FE 00FF 83FE 01FF 87FF"
  181.         $"01FF CFFF 03FF DFFF 03FF FFFF 07FF FFFF"
  182.         $"07FF FFFF 0FFF FFFF 0FFF FFFF 1FFF FFFF"
  183.         $"1FFF FFFF 3FFF FFFF 3FFF FFFF 7FFF FFFF"
  184.         $"7FFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"
  185.         $"7FFF FFFF 7FFF FFFF 01FF FFF0 01FF FFF0"
  186.         $"01FF FFF0 01FF FFF0 01FF FFF0 01FF FFF0"
  187.         $"01FF FFF0 01FF FFF0 00FF FFF0"
  188.     }
  189. };
  190.  
  191. resource 'ics#' (128, "Demo3D Family", purgeable) {
  192.     {    /* array: 2 elements */
  193.         /* [1] */
  194.         $"0707 0489 0851 0821 1001 1001 2FFD 2805"
  195.         $"4BF5 4A15 EA15 6A15 0BF4 0804 0FFC",
  196.         /* [2] */
  197.         $"078F 0FDF 0FFF 1FFF 1FFF 3FFF 3FFF 7FFF"
  198.         $"7FFF FFFF FFFF 7FFF 0FFE 0FFE 0FFE 07FE"
  199.     }
  200. };
  201.  
  202. resource 'ics4' (128, "Demo3D Family", purgeable) {
  203.     $"0000 0666 7000 7666 0000 7677 6707 6776"
  204.     $"0000 6777 7676 7776 0007 6777 7767 7776"
  205.     $"0006 7777 7777 7776 0076 7777 7777 7776"
  206.     $"0067 FFFF FFFF FF76 0767 FCCC CCCC CFD6"
  207.     $"0677 FCFF FFFF CFD6 7677 FCF0 000F CFD6"
  208.     $"6666 FCF0 000F CFD6 0DDD FCF0 000F CFDD"
  209.     $"0000 FCFF FFFF CFD0 0000 FCCC CCCC CFD0"
  210.     $"0000 FFFF FFFF FFD0 0000 0DDD DDDD DDD0"
  211. };
  212.  
  213. resource 'ics8' (128, "Demo3D Family", purgeable) {
  214.     $"0000 0000 00EC ECEC C000 0000 C0EC ECEC"
  215.     $"0000 0000 C0EC C0C0 ECC0 00C0 ECC0 C0EC"
  216.     $"0000 0000 ECC0 C0C0 C0EC C0EC C0C0 C0EC"
  217.     $"0000 00C0 ECC0 C0C0 C0C0 ECC0 C0C0 C0EC"
  218.     $"0000 00EC C0C0 C0C0 C0C0 C0C0 C0C0 C0EC"
  219.     $"0000 C0EC C0C0 C0C0 C0C0 C0C0 C0C0 C0EC"
  220.     $"0000 ECC0 FFFF FFFF FFFF FFFF FFFF C0EC"
  221.     $"00C0 ECC0 FFF7 F7F7 F7F7 F7F7 F7FF FAEC"
  222.     $"00EC C0C0 FFF7 FFFF FFFF FFFF F7FF FAEC"
  223.     $"C0EC C0C0 FFF7 FF00 0000 00FF F7FF FAEC"
  224.     $"ECEC ECEC FFF7 FF00 0000 00FF F7FF FAEC"
  225.     $"00FA FAFA FFF7 FF00 0000 00FF F7FF FAFA"
  226.     $"0000 0000 FFF7 FFFF FFFF FFFF F7FF FA00"
  227.     $"0000 0000 FFF7 F7F7 F7F7 F7F7 F7FF FA00"
  228.     $"0000 0000 FFFF FFFF FFFF FFFF FFFF FA00"
  229.     $"0000 0000 00FA FAFA FAFA FAFA FAFA FA"
  230. };
  231.  
  232. resource 'icl4' (128, "Demo3D Family", purgeable) {
  233.     $"0000 0000 0000 0000 0000 0000 0000 0000"
  234.     $"0000 0000 7666 6666 0000 0007 6666 6660"
  235.     $"0000 0000 6777 7776 7000 0076 7777 7760"
  236.     $"0000 0007 6777 7777 6000 0767 7777 776D"
  237.     $"0000 0006 7777 7777 6700 7677 7777 776D"
  238.     $"0000 0076 7777 7777 7607 6777 7777 776D"
  239.     $"0000 0067 7777 7777 7676 7777 7777 776D"
  240.     $"0000 0767 7777 7777 7767 7777 7777 776D"
  241.     $"0000 0677 7777 7777 7777 7777 7777 776D"
  242.     $"0000 7677 7777 7777 7777 7777 7777 776D"
  243.     $"0000 6777 7777 7777 7777 7777 7777 776D"
  244.     $"0007 6777 7777 7777 7777 7777 7777 776D"
  245.     $"0006 7777 7777 7777 7777 7777 7777 776D"
  246.     $"0076 777F FFFF FFFF FFFF FFFF FFF7 776D"
  247.     $"0067 777F CCCC CCCC CCCC CCCC CCFD 776D"
  248.     $"0767 777F CFFF FFFF FFFF FFFF FCFD 776D"
  249.     $"0677 777F CF00 0000 0000 0000 FCFD 776D"
  250.     $"7677 777F CF06 6660 6660 0600 FCFD 776D"
  251.     $"6777 777F CF00 0000 0000 0000 FCFD 776D"
  252.     $"6666 666F CF00 0000 0666 6660 FCFD 666D"
  253.     $"0DDD DDDF CF0F F0FF 0600 0060 FCFD DDDD"
  254.     $"0DDD DDDF CF0F 0F00 0666 6660 FCFD DDDD"
  255.     $"0000 000F CF00 0000 0000 0000 FCFD 0000"
  256.     $"0000 000F CF00 3330 0003 3300 FCFD 0000"
  257.     $"0000 000F CF03 0003 0030 0030 FCFD 0000"
  258.     $"0000 000F CF00 3330 0003 3300 FCFD 0000"
  259.     $"0000 000F CF00 0000 0000 0000 FCFD 0000"
  260.     $"0000 000F CFFF FFFF FFFF FFFF FCFD 0000"
  261.     $"0000 000F CCCC CCCC CCCC CCCC CCFD 0000"
  262.     $"0000 000F FFFF FFFF FFFF FFFF FFFD 0000"
  263.     $"0000 0000 DDDD DDDD DDDD DDDD DDDD"
  264. };
  265.  
  266. resource 'icl8' (128, "Demo3D Family", purgeable) {
  267.     $"0000 0000 0000 0000 0000 0000 0000 0000"
  268.     $"0000 0000 0000 0000 0000 0000 0000 0000"
  269.     $"0000 0000 0000 0000 C0EC ECEC ECEC ECEC"
  270.     $"0000 0000 0000 00C0 ECEC ECEC ECEC EC00"
  271.     $"0000 0000 0000 0000 ECC0 C0C0 C0C0 C0EC"
  272.     $"C000 0000 0000 C0EC C0C0 C0C0 C0C0 EC00"
  273.     $"0000 0000 0000 00C0 ECC0 C0C0 C0C0 C0C0"
  274.     $"EC00 0000 00C0 ECC0 C0C0 C0C0 C0C0 ECFA"
  275.     $"0000 0000 0000 00EC C0C0 C0C0 C0C0 C0C0"
  276.     $"ECC0 0000 C0EC C0C0 C0C0 C0C0 C0C0 ECFA"
  277.     $"0000 0000 0000 C0EC C0C0 C0C0 C0C0 C0C0"
  278.     $"C0EC 00C0 ECC0 C0C0 C0C0 C0C0 C0C0 ECFA"
  279.     $"0000 0000 0000 ECC0 C0C0 C0C0 C0C0 C0C0"
  280.     $"C0EC C0EC C0C0 C0C0 C0C0 C0C0 C0C0 ECFA"
  281.     $"0000 0000 00C0 ECC0 C0C0 C0C0 C0C0 C0C0"
  282.     $"C0C0 ECC0 C0C0 C0C0 C0C0 C0C0 C0C0 ECFA"
  283.     $"0000 0000 00EC C0C0 C0C0 C0C0 C0C0 C0C0"
  284.     $"C0C0 C0C0 C0C0 C0C0 C0C0 C0C0 C0C0 ECFA"
  285.     $"0000 0000 C0EC C0C0 C0C0 C0C0 C0C0 C0C0"
  286.     $"C0C0 C0C0 C0C0 C0C0 C0C0 C0C0 C0C0 ECFA"
  287.     $"0000 0000 ECC0 C0C0 C0C0 C0C0 C0C0 C0C0"
  288.     $"C0C0 C0C0 C0C0 C0C0 C0C0 C0C0 C0C0 ECFA"
  289.     $"0000 00C0 ECC0 C0C0 C0C0 C0C0 C0C0 C0C0"
  290.     $"C0C0 C0C0 C0C0 C0C0 C0C0 C0C0 C0C0 ECFA"
  291.     $"0000 00EC C0C0 C0C0 C0C0 C0C0 C0C0 C0C0"
  292.     $"C0C0 C0C0 C0C0 C0C0 C0C0 C0C0 C0C0 ECFA"
  293.     $"0000 C0EC C0C0 C0FF FFFF FFFF FFFF FFFF"
  294.     $"FFFF FFFF FFFF FFFF FFFF FFC0 C0C0 ECFA"
  295.     $"0000 ECC0 C0C0 C0FF F7F7 F7F7 F7F7 F7F7"
  296.     $"F7F7 F7F7 F7F7 F7F7 F7F7 FFFA C0C0 ECFA"
  297.     $"00C0 ECC0 C0C0 C0FF F7FF FFFF FFFF FFFF"
  298.     $"FFFF FFFF FFFF FFFF FFF7 FFFA C0C0 ECFA"
  299.     $"00EC C0C0 C0C0 C0FF F7FF 0000 0000 0000"
  300.     $"0000 0000 0000 0000 FFF7 FFFA C0C0 ECFA"
  301.     $"C0EC C0C0 C0C0 C0FF F7FF 00D2 D2D2 D200"
  302.     $"D2D2 D200 00D2 0000 FFF7 FFFA C0C0 ECFA"
  303.     $"ECC0 C0C0 C0C0 C0FF F7FF 0000 0000 0000"
  304.     $"0000 0000 0000 0000 FFF7 FFFA C0C0 ECFA"
  305.     $"ECEC ECEC ECEC ECFF F7FF 0000 0000 0000"
  306.     $"00D2 D2D2 D2D2 D200 FFF7 FFFA ECEC ECFA"
  307.     $"00FA FAFA FAFA FAFF F7FF 00FF FF00 FFFF"
  308.     $"00D2 0000 0000 D200 FFF7 FFFA FAFA FAFA"
  309.     $"00FA FAFA FAFA FAFF F7FF 00FF 00FF 0000"
  310.     $"00D2 D2D2 D2D2 D200 FFF7 FFFA FAFA FAFA"
  311.     $"0000 0000 0000 00FF F7FF 0000 0000 0000"
  312.     $"0000 0000 0000 0000 FFF7 FFFA 0000 0000"
  313.     $"0000 0000 0000 00FF F7FF 0000 4747 4700"
  314.     $"0000 0047 4747 0000 FFF7 FFFA 0000 0000"
  315.     $"0000 0000 0000 00FF F7FF 0047 0000 0047"
  316.     $"0000 4700 0000 4700 FFF7 FFFA 0000 0000"
  317.     $"0000 0000 0000 00FF F7FF 0000 4747 4700"
  318.     $"0000 0047 4747 0000 FFF7 FFFA 0000 0000"
  319.     $"0000 0000 0000 00FF F7FF 0000 0000 0000"
  320.     $"0000 0000 0000 0000 FFF7 FFFA 0000 0000"
  321.     $"0000 0000 0000 00FF F7FF FFFF FFFF FFFF"
  322.     $"FFFF FFFF FFFF FFFF FFF7 FFFA 0000 0000"
  323.     $"0000 0000 0000 00FF F7F7 F7F7 F7F7 F7F7"
  324.     $"F7F7 F7F7 F7F7 F7F7 F7F7 FFFA 0000 0000"
  325.     $"0000 0000 0000 00FF FFFF FFFF FFFF FFFF"
  326.     $"FFFF FFFF FFFF FFFF FFFF FFFA 0000 0000"
  327.     $"0000 0000 0000 0000 FAFA FAFA FAFA FAFA"
  328.     $"FAFA FAFA FAFA FAFA FAFA FAFA"
  329. };
  330.  
  331. type kSignature as 'STR ';
  332. resource kSignature (0,
  333. #if qNames
  334. "Signature",
  335. #endif
  336.     purgeable) {
  337.     "Demo3D  ©Apple Computer, Inc. 1993"
  338. };
  339.  
  340. resource 'FREF' (128,
  341. #if qNames
  342. "Demo3D Application",
  343. #endif
  344.     purgeable) {
  345.     'APPL',
  346.     0,
  347.     ""
  348. };
  349.  
  350. resource 'BNDL' (128,
  351. #if qNames
  352. "Demo3D",
  353. #endif
  354.     purgeable) {
  355.     kSignature,
  356.     0,
  357.         {
  358.         'ICN#',
  359.             {
  360.             0, 128,
  361.             },
  362.         'FREF',
  363.             {
  364.             0, 128,
  365.             }
  366.         }
  367. };
  368.  
  369. //include "Defaults.rsrc"  'STR#' (kDefaultCredits);        // Grab the default credits
  370.  
  371. // Get the default Version resources
  372. include "Defaults.rsrc"  'vers' (1);        // Application or file specific
  373. include "Defaults.rsrc"  'vers' (2);        // Overall package
  374.  
  375.  
  376. resource 'STR#' (kStrings,
  377. #if qNames
  378. "Strings",
  379. #endif
  380. purgeable) {
  381.     {    
  382.         "This window was created procedurally.";
  383.         "Click this to show a window with improper use of a gray background:";
  384.         "Edit Text Field 1:";
  385.     }
  386. };
  387.